Platform Explorer / Nuxeo Platform 6.0

Contribution org.nuxeo.search.ui.contentviews--contentViews

This contribution is part of XML component org.nuxeo.search.ui.contentviews inside nuxeo-search-ui-6.0.jar

Extension Point

Extension point contentViews of component ContentViewService.

Contributed Items

  • <contentView name="default_search">
          <title>label.search.default</title>
          <translateTitle>true</translateTitle>
          <showTitle>false</showTitle>
          <emptySentence>label.content.empty.search</emptySentence>
          <translateEmptySentence>true</translateEmptySentence>
    
          <coreQueryPageProvider>
            <property name="coreSession">#{documentManager}</property>
            <property name="maxResults">DEFAULT_NAVIGATION_RESULTS</property>
            <whereClause docType="DefaultSearch">
              <fixedPart>
                ecm:primaryType NOT IN ('Domain', 'SectionRoot', 'TemplateRoot', 'WorkspaceRoot', 'Favorites')
                AND ecm:mixinType != 'HiddenInNavigation'
                AND NOT (ecm:mixinType = 'Collection' AND ecm:name = 'Locally Edited')
                AND ecm:isCheckedInVersion = 0
                AND ecm:currentLifeCycleState != 'deleted'
                AND SORTED_COLUMN IS NOT NULL
              </fixedPart>
              <predicate operator="FULLTEXT" parameter="ecm:fulltext">
                <field name="ecm_fulltext" schema="default_search"/>
              </predicate>
              <predicate operator="IN" parameter="dc:creator">
                <field name="dc_creator" schema="default_search"/>
              </predicate>
              <predicate operator="BETWEEN" parameter="dc:created">
                <field name="dc_created_min" schema="default_search"/>
                <field name="dc_created_max" schema="default_search"/>
              </predicate>
              <predicate operator="BETWEEN" parameter="dc:modified">
                <field name="dc_modified_min" schema="default_search"/>
                <field name="dc_modified_max" schema="default_search"/>
              </predicate>
              <predicate operator="IN" parameter="dc:nature">
                <field name="dc_nature" schema="default_search"/>
              </predicate>
              <predicate operator="STARTSWITH" parameter="dc:subjects">
                <field name="dc_subjects" schema="default_search"/>
              </predicate>
              <predicate operator="STARTSWITH" parameter="dc:coverage">
                <field name="dc_coverage" schema="default_search"/>
              </predicate>
              <predicate operator="STARTSWITH" parameter="ecm:path">
                <field name="ecm_path" schema="default_search"/>
              </predicate>
              <predicate operator="IN" parameter="ecm:tag">
                <field name="ecm_tags" schema="default_search"/>
              </predicate>
              <predicate operator="IN" parameter="collectionMember:collectionIds">
                <field name="ecm_collections" schema="default_search"/>
              </predicate>
            </whereClause>
            <aggregates>
              <aggregate id="dc_nature_agg" parameter="dc:nature" type="terms">
                <field name="dc_nature_agg" schema="default_search"/>
                <properties>
                  <property name="size">10</property>
                </properties>
              </aggregate>
              <aggregate id="dc_subjects_agg" parameter="dc:subjects" type="terms">
                <field name="dc_subjects_agg" schema="default_search"/>
                <properties>
                  <property name="size">10</property>
                </properties>
              </aggregate>
              <aggregate id="dc_coverage_agg" parameter="dc:coverage" type="terms">
                <field name="dc_coverage_agg" schema="default_search"/>
                <properties>
                  <property name="size">10</property>
                </properties>
              </aggregate>
              <aggregate id="dc_creator_agg" parameter="dc:creator" type="terms">
                <field name="dc_creator_agg" schema="default_search"/>
                <properties>
                  <property name="size">10</property>
                </properties>
              </aggregate>
              <aggregate id="common_size_agg" parameter="common:size" type="range">
                <field name="common_size_agg" schema="default_search"/>
                <ranges>
                  <range key="tiny" to="102400"/>
                  <range from="102401" key="small" to="1048576"/>
                  <range from="1048577" key="medium" to="10485760"/>
                  <range from="10485761" key="big" to="104857600"/>
                  <range from="104857601" key="huge"/>
                </ranges>
              </aggregate>
              <aggregate id="dc_created_agg" parameter="dc:created" type="date_histogram">
                <field name="dc_created_agg" schema="default_search"/>
                <properties>
                  <property name="interval">year</property>
                  <property name="format">yyyy</property>
                  <property name="order">key desc</property>
                </properties>
              </aggregate>
              <aggregate id="dc_modified_agg" parameter="dc:modified" type="date_range">
                <field name="dc_modified_agg" schema="default_search"/>
                <properties>
                  <property name="format">"dd-MM-yyyy"</property>
                </properties>
                <dateRanges>
                  <dateRange fromDate="now-24H" key="last24h" toDate="now"/>
                  <dateRange fromDate="now-7d" key="lastWeek" toDate="now-24H"/>
                  <dateRange fromDate="now-1M" key="lastMonth" toDate="now-7d"/>
                  <dateRange fromDate="now-1y" key="lastYear" toDate="now-1M"/>
                  <dateRange key="priorToLastYear" toDate="now-1y"/>
                </dateRanges>
              </aggregate>
            </aggregates>
            <pageSize>20</pageSize>
          </coreQueryPageProvider>
    
          <searchLayout name="default_search_layout"/>
    
          <showPageSizeSelector>true</showPageSizeSelector>
          <useGlobalPageSize>false</useGlobalPageSize>
          <refresh>
            <event>documentChanged</event>
            <event>documentChildrenChanged</event>
          </refresh>
          <cacheKey>only_one_cache</cacheKey>
          <cacheSize>1</cacheSize>
    
          <resultLayouts>
            <layout iconPath="/icons/document_listing_icon_2_columns_icon.png" name="document_listing_thumbnail" showEditRows="true" showSlideshow="true" title="document_thumbnail_listing" translateTitle="true"/>
            <layout iconPath="/icons/document_listing_icon.png" name="document_listing_table" showCSVExport="true" showEditColumns="true" showSpreadsheet="true" title="document_listing" translateTitle="true"/>
          </resultLayouts>
    
          <selectionList>CURRENT_SELECTION</selectionList>
          <actions category="CURRENT_SELECTION_LIST"/>
    
          <resultColumns>
            #{searchDocument.cvd.selectedLayoutColumns}
          </resultColumns>
    
          <resultLayout>
            #{searchDocument.cvd.resultLayoutName}
          </resultLayout>
    
          <flags>
            <flag>SEARCH</flag>
          </flags>
        </contentView>
  • <contentView name="simple_search">
    
          <title>label.search.form.simple</title>
          <translateTitle>true</translateTitle>
          <showTitle>false</showTitle>
          <iconPath>/icons/document_listing_icon.png</iconPath>
    
          <emptySentence>label.content.empty.search</emptySentence>
          <translateEmptySentence>true</translateEmptySentence>
    
          <coreQueryPageProvider>
            <property name="maxResults">DEFAULT_NAVIGATION_RESULTS</property>
            <property name="coreSession">#{documentManager}</property>
            <whereClause docType="DefaultSearch">
              <fixedPart>
                ecm:mixinType != 'HiddenInNavigation' AND
                ecm:isCheckedInVersion = 0
                AND ecm:currentLifeCycleState != 'deleted'
                AND SORTED_COLUMN IS NOT NULL
              </fixedPart>
              <predicate operator="FULLTEXT" parameter="ecm:fulltext">
                <field name="ecm_fulltext" schema="default_search"/>
              </predicate>
            </whereClause>
            <!-- sort column="dc:title" ascending="true" / sort by fulltext relevance -->
            <pageSize>20</pageSize>
          </coreQueryPageProvider>
    
          <searchLayout name="simple_search_layout"/>
    
          <showPageSizeSelector>true</showPageSizeSelector>
          <useGlobalPageSize>true</useGlobalPageSize>
          <refresh>
            <event>documentChanged</event>
            <event>documentChildrenChanged</event>
          </refresh>
          <cacheKey>only_one_cache</cacheKey>
          <cacheSize>1</cacheSize>
    
          <resultLayouts>
            <layout iconPath="/icons/document_listing_icon_2_columns_icon.png" name="document_listing_thumbnail" showEditRows="true" showSlideshow="true" title="document_thumbnail_listing" translateTitle="true"/>
            <layout iconPath="/icons/document_listing_icon.png" name="document_listing_table" showCSVExport="true" showEditColumns="true" showSpreadsheet="true" title="document_listing" translateTitle="true"/>
          </resultLayouts>
    
          <resultColumns>
            #{searchDocument.cvd.selectedLayoutColumns}
          </resultColumns>
    
          <selectionList>CURRENT_SELECTION</selectionList>
          <actions category="CURRENT_SELECTION_LIST"/>
    
        </contentView>
  • <contentView name="nxql_search">
    
          <title>label.search.nxql</title>
          <translateTitle>true</translateTitle>
          <showTitle>false</showTitle>
          <emptySentence>label.content.empty.search</emptySentence>
          <translateEmptySentence>true</translateEmptySentence>
    
          <coreQueryPageProvider>
            <property name="coreSession">#{documentManager}</property>
            <property name="maxResults">DEFAULT_NAVIGATION_RESULTS</property>
            <searchDocumentType>DefaultSearch</searchDocumentType>
            <pattern escapeParameters="false" quoteParameters="false">?</pattern>
            <parameter>#{searchUIActions.nxqlQuery}</parameter>
            <!-- sort column="dc:title" ascending="true" / sort by fulltext relevance -->
            <pageSize>20</pageSize>
          </coreQueryPageProvider>
    
          <showPageSizeSelector>true</showPageSizeSelector>
          <useGlobalPageSize>true</useGlobalPageSize>
          <refresh>
            <event>documentChanged</event>
            <event>documentChildrenChanged</event>
          </refresh>
          <cacheKey>only_one_cache</cacheKey>
          <cacheSize>1</cacheSize>
    
          <resultLayouts>
            <layout iconPath="/icons/document_listing_icon_2_columns_icon.png" name="document_listing_thumbnail" showEditRows="true" showSlideshow="true" title="document_thumbnail_listing" translateTitle="true"/>
            <layout iconPath="/icons/document_listing_icon.png" name="document_listing_table" showCSVExport="true" showEditColumns="true" showSpreadsheet="true" title="document_listing" translateTitle="true"/>
          </resultLayouts>
    
          <selectionList>CURRENT_SELECTION</selectionList>
          <actions category="CURRENT_SELECTION_LIST"/>
    
        </contentView>
  • <contentView name="all_saved_searches">
    
          <showTitle>false</showTitle>
    
          <coreQueryPageProvider>
            <property name="coreSession">#{documentManager}</property>
            <whereClause docType="AdvancedSearch">
              <predicate operator="FULLTEXT" parameter="ecm:fulltext">
                <field name="fulltext_all" schema="advanced_search"/>
              </predicate>
              <predicate operator="FULLTEXT" parameter="dc:title">
                <field name="title" schema="advanced_search"/>
              </predicate>
              <predicate operator="BETWEEN" parameter="dc:modified">
                <field name="modified_min" schema="advanced_search"/>
                <field name="modified_max" schema="advanced_search"/>
              </predicate>
              <fixedPart>
                ecm:mixinType = 'SavedSearch'
                AND ecm:isProxy = 0 AND
                ecm:isCheckedInVersion = 0
                AND ecm:currentLifeCycleState != 'deleted'
                AND ecm:parentId = ?
                AND SORTED_COLUMN IS NOT NULL
              </fixedPart>
            </whereClause>
            <parameter>#{userWorkspaceManagerActions.currentUserPersonalWorkspace.id}</parameter>
            <sort ascending="true" column="dc:title"/>
            <pageSize>20</pageSize>
          </coreQueryPageProvider>
    
          <searchLayout filterDisplayType="quick" name="document_content_filter"/>
          <showFilterForm>true</showFilterForm>
    
          <showPageSizeSelector>true</showPageSizeSelector>
          <useGlobalPageSize>false</useGlobalPageSize>
          <refresh>
            <event>documentChanged</event>
            <event>documentChildrenChanged</event>
          </refresh>
          <cacheKey>only_one_cache</cacheKey>
          <cacheSize>1</cacheSize>
    
          <resultLayouts>
            <layout iconPath="/icons/document_listing_icon.png" name="document_listing_table" showCSVExport="true" showEditColumns="true" showSpreadsheet="true" title="document_listing" translateTitle="true"/>
          </resultLayouts>
    
          <selectionList>SAVED_SEARCHES_CURRENT_SELECTION</selectionList>
          <actions category="SAVED_SEARCHES_CURRENT_SELECTION_LIST"/>
        </contentView>

XML Source

<extension point="contentViews" target="org.nuxeo.ecm.platform.ui.web.ContentViewService">

    <contentView name="default_search">
      <title>label.search.default</title>
      <translateTitle>true</translateTitle>
      <showTitle>false</showTitle>
      <emptySentence>label.content.empty.search</emptySentence>
      <translateEmptySentence>true</translateEmptySentence>

      <coreQueryPageProvider>
        <property name="coreSession">#{documentManager}</property>
        <property name="maxResults">DEFAULT_NAVIGATION_RESULTS</property>
        <whereClause docType="DefaultSearch">
          <fixedPart>
            ecm:primaryType NOT IN ('Domain', 'SectionRoot', 'TemplateRoot', 'WorkspaceRoot', 'Favorites')
            AND ecm:mixinType != 'HiddenInNavigation'
            AND NOT (ecm:mixinType = 'Collection' AND ecm:name = 'Locally Edited')
            AND ecm:isCheckedInVersion = 0
            AND ecm:currentLifeCycleState != 'deleted'
            AND SORTED_COLUMN IS NOT NULL
          </fixedPart>
          <predicate operator="FULLTEXT" parameter="ecm:fulltext">
            <field name="ecm_fulltext" schema="default_search"/>
          </predicate>
          <predicate operator="IN" parameter="dc:creator">
            <field name="dc_creator" schema="default_search"/>
          </predicate>
          <predicate operator="BETWEEN" parameter="dc:created">
            <field name="dc_created_min" schema="default_search"/>
            <field name="dc_created_max" schema="default_search"/>
          </predicate>
          <predicate operator="BETWEEN" parameter="dc:modified">
            <field name="dc_modified_min" schema="default_search"/>
            <field name="dc_modified_max" schema="default_search"/>
          </predicate>
          <predicate operator="IN" parameter="dc:nature">
            <field name="dc_nature" schema="default_search"/>
          </predicate>
          <predicate operator="STARTSWITH" parameter="dc:subjects">
            <field name="dc_subjects" schema="default_search"/>
          </predicate>
          <predicate operator="STARTSWITH" parameter="dc:coverage">
            <field name="dc_coverage" schema="default_search"/>
          </predicate>
          <predicate operator="STARTSWITH" parameter="ecm:path">
            <field name="ecm_path" schema="default_search"/>
          </predicate>
          <predicate operator="IN" parameter="ecm:tag">
            <field name="ecm_tags" schema="default_search"/>
          </predicate>
          <predicate operator="IN" parameter="collectionMember:collectionIds">
            <field name="ecm_collections" schema="default_search"/>
          </predicate>
        </whereClause>
        <aggregates>
          <aggregate id="dc_nature_agg" parameter="dc:nature" type="terms">
            <field name="dc_nature_agg" schema="default_search"/>
            <properties>
              <property name="size">10</property>
            </properties>
          </aggregate>
          <aggregate id="dc_subjects_agg" parameter="dc:subjects" type="terms">
            <field name="dc_subjects_agg" schema="default_search"/>
            <properties>
              <property name="size">10</property>
            </properties>
          </aggregate>
          <aggregate id="dc_coverage_agg" parameter="dc:coverage" type="terms">
            <field name="dc_coverage_agg" schema="default_search"/>
            <properties>
              <property name="size">10</property>
            </properties>
          </aggregate>
          <aggregate id="dc_creator_agg" parameter="dc:creator" type="terms">
            <field name="dc_creator_agg" schema="default_search"/>
            <properties>
              <property name="size">10</property>
            </properties>
          </aggregate>
          <aggregate id="common_size_agg" parameter="common:size" type="range">
            <field name="common_size_agg" schema="default_search"/>
            <ranges>
              <range key="tiny" to="102400"/>
              <range from="102401" key="small" to="1048576"/>
              <range from="1048577" key="medium" to="10485760"/>
              <range from="10485761" key="big" to="104857600"/>
              <range from="104857601" key="huge"/>
            </ranges>
          </aggregate>
          <aggregate id="dc_created_agg" parameter="dc:created" type="date_histogram">
            <field name="dc_created_agg" schema="default_search"/>
            <properties>
              <property name="interval">year</property>
              <property name="format">yyyy</property>
              <property name="order">key desc</property>
            </properties>
          </aggregate>
          <aggregate id="dc_modified_agg" parameter="dc:modified" type="date_range">
            <field name="dc_modified_agg" schema="default_search"/>
            <properties>
              <property name="format">"dd-MM-yyyy"</property>
            </properties>
            <dateRanges>
              <dateRange fromDate="now-24H" key="last24h" toDate="now"/>
              <dateRange fromDate="now-7d" key="lastWeek" toDate="now-24H"/>
              <dateRange fromDate="now-1M" key="lastMonth" toDate="now-7d"/>
              <dateRange fromDate="now-1y" key="lastYear" toDate="now-1M"/>
              <dateRange key="priorToLastYear" toDate="now-1y"/>
            </dateRanges>
          </aggregate>
        </aggregates>
        <pageSize>20</pageSize>
      </coreQueryPageProvider>

      <searchLayout name="default_search_layout"/>

      <showPageSizeSelector>true</showPageSizeSelector>
      <useGlobalPageSize>false</useGlobalPageSize>
      <refresh>
        <event>documentChanged</event>
        <event>documentChildrenChanged</event>
      </refresh>
      <cacheKey>only_one_cache</cacheKey>
      <cacheSize>1</cacheSize>

      <resultLayouts>
        <layout iconPath="/icons/document_listing_icon_2_columns_icon.png" name="document_listing_thumbnail" showEditRows="true" showSlideshow="true" title="document_thumbnail_listing" translateTitle="true"/>
        <layout iconPath="/icons/document_listing_icon.png" name="document_listing_table" showCSVExport="true" showEditColumns="true" showSpreadsheet="true" title="document_listing" translateTitle="true"/>
      </resultLayouts>

      <selectionList>CURRENT_SELECTION</selectionList>
      <actions category="CURRENT_SELECTION_LIST"/>

      <resultColumns>
        #{searchDocument.cvd.selectedLayoutColumns}
      </resultColumns>

      <resultLayout>
        #{searchDocument.cvd.resultLayoutName}
      </resultLayout>

      <flags>
        <flag>SEARCH</flag>
      </flags>
    </contentView>

    <contentView name="simple_search">

      <title>label.search.form.simple</title>
      <translateTitle>true</translateTitle>
      <showTitle>false</showTitle>
      <iconPath>/icons/document_listing_icon.png</iconPath>

      <emptySentence>label.content.empty.search</emptySentence>
      <translateEmptySentence>true</translateEmptySentence>

      <coreQueryPageProvider>
        <property name="maxResults">DEFAULT_NAVIGATION_RESULTS</property>
        <property name="coreSession">#{documentManager}</property>
        <whereClause docType="DefaultSearch">
          <fixedPart>
            ecm:mixinType != 'HiddenInNavigation' AND
            ecm:isCheckedInVersion = 0
            AND ecm:currentLifeCycleState != 'deleted'
            AND SORTED_COLUMN IS NOT NULL
          </fixedPart>
          <predicate operator="FULLTEXT" parameter="ecm:fulltext">
            <field name="ecm_fulltext" schema="default_search"/>
          </predicate>
        </whereClause>
        <!-- sort column="dc:title" ascending="true" / sort by fulltext relevance -->
        <pageSize>20</pageSize>
      </coreQueryPageProvider>

      <searchLayout name="simple_search_layout"/>

      <showPageSizeSelector>true</showPageSizeSelector>
      <useGlobalPageSize>true</useGlobalPageSize>
      <refresh>
        <event>documentChanged</event>
        <event>documentChildrenChanged</event>
      </refresh>
      <cacheKey>only_one_cache</cacheKey>
      <cacheSize>1</cacheSize>

      <resultLayouts>
        <layout iconPath="/icons/document_listing_icon_2_columns_icon.png" name="document_listing_thumbnail" showEditRows="true" showSlideshow="true" title="document_thumbnail_listing" translateTitle="true"/>
        <layout iconPath="/icons/document_listing_icon.png" name="document_listing_table" showCSVExport="true" showEditColumns="true" showSpreadsheet="true" title="document_listing" translateTitle="true"/>
      </resultLayouts>

      <resultColumns>
        #{searchDocument.cvd.selectedLayoutColumns}
      </resultColumns>

      <selectionList>CURRENT_SELECTION</selectionList>
      <actions category="CURRENT_SELECTION_LIST"/>

    </contentView>

    <contentView name="nxql_search">

      <title>label.search.nxql</title>
      <translateTitle>true</translateTitle>
      <showTitle>false</showTitle>
      <emptySentence>label.content.empty.search</emptySentence>
      <translateEmptySentence>true</translateEmptySentence>

      <coreQueryPageProvider>
        <property name="coreSession">#{documentManager}</property>
        <property name="maxResults">DEFAULT_NAVIGATION_RESULTS</property>
        <searchDocumentType>DefaultSearch</searchDocumentType>
        <pattern escapeParameters="false" quoteParameters="false">?</pattern>
        <parameter>#{searchUIActions.nxqlQuery}</parameter>
        <!-- sort column="dc:title" ascending="true" / sort by fulltext relevance -->
        <pageSize>20</pageSize>
      </coreQueryPageProvider>

      <showPageSizeSelector>true</showPageSizeSelector>
      <useGlobalPageSize>true</useGlobalPageSize>
      <refresh>
        <event>documentChanged</event>
        <event>documentChildrenChanged</event>
      </refresh>
      <cacheKey>only_one_cache</cacheKey>
      <cacheSize>1</cacheSize>

      <resultLayouts>
        <layout iconPath="/icons/document_listing_icon_2_columns_icon.png" name="document_listing_thumbnail" showEditRows="true" showSlideshow="true" title="document_thumbnail_listing" translateTitle="true"/>
        <layout iconPath="/icons/document_listing_icon.png" name="document_listing_table" showCSVExport="true" showEditColumns="true" showSpreadsheet="true" title="document_listing" translateTitle="true"/>
      </resultLayouts>

      <selectionList>CURRENT_SELECTION</selectionList>
      <actions category="CURRENT_SELECTION_LIST"/>

    </contentView>

    <contentView name="all_saved_searches">

      <showTitle>false</showTitle>

      <coreQueryPageProvider>
        <property name="coreSession">#{documentManager}</property>
        <whereClause docType="AdvancedSearch">
          <predicate operator="FULLTEXT" parameter="ecm:fulltext">
            <field name="fulltext_all" schema="advanced_search"/>
          </predicate>
          <predicate operator="FULLTEXT" parameter="dc:title">
            <field name="title" schema="advanced_search"/>
          </predicate>
          <predicate operator="BETWEEN" parameter="dc:modified">
            <field name="modified_min" schema="advanced_search"/>
            <field name="modified_max" schema="advanced_search"/>
          </predicate>
          <fixedPart>
            ecm:mixinType = 'SavedSearch'
            AND ecm:isProxy = 0 AND
            ecm:isCheckedInVersion = 0
            AND ecm:currentLifeCycleState != 'deleted'
            AND ecm:parentId = ?
            AND SORTED_COLUMN IS NOT NULL
          </fixedPart>
        </whereClause>
        <parameter>#{userWorkspaceManagerActions.currentUserPersonalWorkspace.id}</parameter>
        <sort ascending="true" column="dc:title"/>
        <pageSize>20</pageSize>
      </coreQueryPageProvider>

      <searchLayout filterDisplayType="quick" name="document_content_filter"/>
      <showFilterForm>true</showFilterForm>

      <showPageSizeSelector>true</showPageSizeSelector>
      <useGlobalPageSize>false</useGlobalPageSize>
      <refresh>
        <event>documentChanged</event>
        <event>documentChildrenChanged</event>
      </refresh>
      <cacheKey>only_one_cache</cacheKey>
      <cacheSize>1</cacheSize>

      <resultLayouts>
        <layout iconPath="/icons/document_listing_icon.png" name="document_listing_table" showCSVExport="true" showEditColumns="true" showSpreadsheet="true" title="document_listing" translateTitle="true"/>
      </resultLayouts>

      <selectionList>SAVED_SEARCHES_CURRENT_SELECTION</selectionList>
      <actions category="SAVED_SEARCHES_CURRENT_SELECTION_LIST"/>
    </contentView>

  </extension>